 |
|
 |
Subject: B-tree structure is invalid |
 |
 |
 |
Product Area: Domino Server |
 |
Technical Area: Error Message |
 |
Platform: Windows 2003 server |
 |
Release: 8.0.1 |
 |
Reproducible: Unknown |
 |
 |
 |
 |
I've resolved this problem, but thought it worthwhile publishing it in case anybody else gets it.
My mailfile is 850Mb with 200 private folders. We upgraded the client from 7.0.3 to Domino 8.0.1, then this week upgraded the server to the same version. After upgrading the server, changes made to my local mail file were not replicating to the server. I noticed the following on the Replication page:
B-tree structure is invalid
And the following in the replication log (locally):
Unable to store document in mailserver/srv/Blueprint Mail\mhayman.nsf (NoteID =1737594) from Mail\mhayman.nsf (NoteID = 914758): B-tree structure is invalid
After much investigating, I found that by disabling replication of design (in replication settings for the mail file on the server), then the documents would replicate successfully. However, as I often change my folder structure when offline, this was not a satisfactory solution.
So we went to the trouble of restoring the database from backup. The file brought back from backup was prior to upgrading the server since there was never an issue on 7.0.3
Alas, the problem recurred, so there was something in the database that did not cause a problem in 7.0.3, but does cause a problem on 8.0.1
Having tried fixup, updall, compact (all types), and replacing the design from the template, nothing worked, until I did the following:
Name the local mail file as a template, set the version on the server to inherit from the local version, then did a refresh design on the server version. This fixed it, but only for a short time as the next day the problem recurred.
Further investigation showed that a lot of the private folders could not be deleted manually due to an interactive "B-Tree structure is invalid" error too. I also noticed that the folders with the B-Tree problem, also showed up the following in the status bar when the folder was opened: "Note item not found". I found that by adding a memo to these folders, it was possible to then delete the folder so the B-tree structure must be repaired by this action. However, adding a memo to a folder did not fix the "Note item not found" error, though hopefully this could now be fixed by a fixup. Because I have 200 folders, and it seemed that half of them get the "Note item not found" error, I wrote a LotusScript agent to add a memo to each folder, and this resolved the B-Tree error: I ran this on the server as it was much faster than running on the client...
Dim sess As New notessession
Dim dbThis As NotesDatabase
Dim docTemp As NotesDocument
Dim vViews As Variant
Set dbThis=sess.CurrentDatabase
Set docTemp=dbThis.CreateDocument
docTemp.Form="Memo"
docTemp.Subject="0. TidyUpFolders"
Call docTemp.ComputeWithForm( False, False)
docTemp.Save True, False, True
vViews=dbThis.Views
Forall f_vw In vViews
If f_vw.IsFolder Then
Print f_vw.Name
Call docTemp.PutInFolder (f_vw.Name )
f_vw.Refresh
Call docTemp.RemoveFromFolder ( f_vw.Name)
f_vw.Refresh
End If
End Forall
Print "Complete!"
If you are unfortunate to have the B-tree problem, I hope this post helps you.
 
Feedback number WEBB7E9HSL created by ~Alexis Bretumilyjip on 05/02/2008


|
|  |
|